/**
 * Log4jAutoConfig.java copyright tidalinfo
 * Created on 2021年11月23日 下午10:38:18
 */
package xj.toolkit.log4j;

import org.apache.log4j.PropertyConfigurator;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

/**
 * 配置自动加载log4j.properties文件。
 * 
 * @author <a href="xiaojiancao@tidalinfo.cn">xiaojian.cao</a>
 *
 */
public class Log4jAutoConfig {
	
	private static final Logger logger = LoggerFactory.getLogger(Log4jAutoConfig.class);  

    private int interval = 10000;  
    
  
    /**
     * log4j日志自动加载
     *
     * @param reload   是否开启自动加载
     * @param interval 自动加载时间(ms)
     */  
    public Log4jAutoConfig(boolean reload, int interval) {  
        this.interval = interval;  
        
        if(reload) {
        	this.loadConfig(); 
        }
         
    }  
  
    public void loadConfig() {  
        String log4jPath = Log4jAutoConfig.class.getClassLoader().getResource("log4j.properties").getPath();  
        logger.debug("Use log4j: " + log4jPath);
  
        // 间隔特定时间，检测文件是否修改，自动重新读取配置  
        PropertyConfigurator.configureAndWatch(log4jPath, this.interval);  
    }  
}
